<template>
	<view>
		<button @click="handleUploadClick" style="font-size: 12px;background: transparent;border:0px">{{ $t(text)
			}}</button>
		<xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload>
	</view>
</template>
<script>
import xeUpload from "@/uni_modules/xe-upload/components/xe-upload/xe-upload.vue"

export default {
	components: {
		xeUpload
	},
	props: {
		text: {
			type: [Array, Object, Number, String],
			default: '上传'
		},
	},
	data() {
		return {
			uploadOptions: {
				// url: 'http://192.168.31.185:3000/api/upload', // 不传入上传地址则返回本地链接
			},
			action: "https://app.gluz.com.cn/api" + '/common/upload',

		};
	},
	methods: {
		handleUploadClick() {
			// 使用默认配置则不需要传入第二个参数
			// type: ['image', 'video', 'file'];
			this.$refs.XeUpload.upload('file', {});
			// this.$refs.XeUpload.upload('image', {
			//  count: 6,
			//  sizeType: ['original', 'compressed'],
			//  sourceType: ['album'],
			// });
		},
		handleUploadCallback(e) {
			// e.type: ['choose', 'success', 'warning']
			// choose 是options没有传入url，返回临时链接时触发
			// success 是上传成功返回对应的数据时触发
			// warning 上传或者选择文件失败触发
			// ......

			uni.showLoading({
				title: "Loading...",
				mask: true
			})
			const that = this
			uni.uploadFile({
				url: that.action,
				filePath: e.data[0].tempFilePath,
				name: 'file',
				success: (uploadFileRes) => {
					uni.hideLoading();
					const resData = JSON.parse(uploadFileRes.data)
					if (resData.code === 1) {
						that.$emit('change', resData.data)
					} else {
						let resUrl = { url: '' }
						that.$emit('change', resUrl)
					}
				}
			});
			/*
			'callback.type === success' : [
				{
					"size": 176579, // 选择的文件的大小
					"name": "Kafka.pdf", // 选择的文件的名称（小程序端可能会没有）
					"type": "application/pdf",
					"tempFilePath": "_doc/uniapp_temp/Kafka-16988473328760.pdf", // 临时路径
					"fileType": "file", // 文件类型[image, video, file]
					"response": {
						"result": {
							"fileName": "Kafka.pdf",
							"filePath": `http://localhost:3000/upload/e51d814b649122fc64892d0bc6383d07.pdf`,
						},
						"success": true,
					}, // 上传返回的信息
				}
			]
			
			'callback.type === choose' : [
				{
					"size": 176579, // 选择的文件的大小
					"name": "Kafka.pdf", // 选择的文件的名称（小程序端可能会没有）
					"type": "application/pdf",
					"tempFilePath": "_doc/uniapp_temp/Kafka-16988473328760.pdf", // 文件临时路径
					"fileType": "file", // 文件类型[image, video, file]
				}
			]
			
			*/


		},
	},
}
</script>